package cn.neusoft.tool;

import java.util.ArrayList;
import java.util.List;

public class PageSet<T> {

    private List<T> data;
    private int pageSize;
    private int rows;

    public PageSet(List<T> data, int pageSize){
        this.data = data;
        this.pageSize = pageSize;
        rows = data.size() / pageSize;
    }

    public List<T> getPage(int pageNum){
        List<T> list = new ArrayList<T>();
        if(pageNum < 1){
            return list;
        }
        int start = (pageNum - 1) * pageSize;
        int end = pageNum * pageSize - 1;
        for(int i = start; i < data.size() && i <= end; i++){
            list.add(data.get(i));
        }


        return list;
    }

    public int getTotal(){
        return data.size();
    }

    public List<T> getData() {
        return data;
    }

    public int getRows(){
        return rows;
    }

    public void setData(List<T> data) {
        this.data = data;
    }


    public int getPageSize() {
        return pageSize;
    }

    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }
}
